/* ==================================================================   
 * Created [2009-4-27 下午11:32:55] by Jon.King 
 * ==================================================================  
 * TSS 
 * ================================================================== 
 * mailTo:jinpujun@hotmail.com
 * Copyright (c) Jon.King, 2009-2012 
 * ================================================================== 
*/

package com.jinhe.tss.component.dynproperty;

import com.jinhe.tss.component.dynproperty.entity.DynableEntity;
import com.jinhe.tss.component.dynproperty.support.hibernate.IDynAbstractHibernateDao;
 

public interface PropertyDao extends IDynAbstractHibernateDao {
    
    /**
     * 获取动态实体（组）的最大排序号 ＋ 1
     * @param parentId
     * @return
     */
    Integer getNextOrderByPId(Long parentId);
    
    /**
     * 获取某动态实体的属性排序号最大值
     * @param entityCode
     * @return
     */
    Integer getNextSeqNo(String entityCode);
    
    /**
     * 获取同个XForm模板下Tab页的排序号最大值
     * @param xformTemplateId
     * @return
     */
    Integer getTabNextSeqNo(Long xformTemplateId);

    /**
     * 移动GroupOrEntity资源。
     * PermissionInterceptor将会拦截本方法。
     * 移动改变了父节点,必须改变roleResOpt关系, 来补齐
     * @param obj
     */
    DynableEntity moveGroupOrEntity(DynableEntity obj);
}

